From: Noah Meyerhans Date: Tue, 25 Nov 2025 21:38:42 +0000 (-0500) Subject: [PATCH] Work around test failure on big-endian architectures X-Git-Tag: archive/raspbian/1%2.4.2+dfsg1-3+rpi1^2~6 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/cgi/%22https://%22%22/%22http:/www.example.com/cgi/%22https:/%22%22?a=commitdiff_plain;h=7bde382b8481dbf1a16359683004d332efcd2e27;p=dovecot.git [PATCH] Work around test failure on big-endian architectures Because the endianness of the target system results in data being layed out differently in memory, the manually constructed test input doesn't result in the expected failure modes, which is interpreted as a test failure. This is not a permanent fix. See https://dovecot.org/mailman3/archives/list/dovecot@dovecot.org/message/FZBVU55TK5332SMZSSDNWIVJCWGUAJQS/ Gbp-Pq: Name work-around-test-failure-on-big-endian-architectures.patch --- diff --git a/src/lib-master/test-master-service-settings.c b/src/lib-master/test-master-service-settings.c index 37028fe..f545ee6 100644 --- a/src/lib-master/test-master-service-settings.c +++ b/src/lib-master/test-master-service-settings.c @@ -171,23 +171,6 @@ static const struct { "\x00\x00\x00"), "Area too small when reading uint of 'settings count'" }, - /* settings keys are truncated */ - { DATA("DOVECOT-CONFIG\t1.0\n" - NUM64("\x2C") // full size - NUM32("\x00") // cache path count - NUM32("\x0D") // all keys size - "\x00" // 32bit padding - NUM32("\x00") // all keys hash key prefix - NUM32("\x00") // all keys hash nodes count - NUM32("\x00") // block names count - NUM32("\x01") // event filter count - "\x00" // event filter[0] - NUM32("\x00") // number of named list filter elements - NUM64("\x06") // block size - "N\x00" // block name - NUM32("\x01")), // settings count - "'setting key' points outside area" }, - /* filter count is truncated */ { DATA("DOVECOT-CONFIG\t1.0\n" NUM64("\x31") // full size @@ -227,25 +210,6 @@ static const struct { "\x00\x00\x00\x00\x00\x00\x00"), // filter settings size "Area too small when reading size of 'filter settings size'" }, - /* filter settings is truncated */ - { DATA("DOVECOT-CONFIG\t1.0\n" - NUM64("\x3A") // full size - NUM32("\x00") // cache path count - NUM32("\x0D") // all keys size - "\x00" // 32bit padding - NUM32("\x00") // all keys hash key prefix - NUM32("\x00") // all keys hash nodes count - NUM32("\x00") // block names count - NUM32("\x01") // event filter count - "\x00" // event filter[0] - NUM32("\x00") // number of named list filter elements - NUM64("\x14") // block size - "N\x00" // block name - NUM32("\x01") // settings count - "K\x00" // setting[0] key - NUM32("\x01") // filter count - NUM64("\x10")), // filter settings size - "'filter settings size' points outside area" }, /* filter error is missing */ { DATA("DOVECOT-CONFIG\t1.0\n" NUM64("\x47") // full size